home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Workbench Add-On
/
Workbench Add-On - Volume 1.iso
/
Dev
/
Oberon
/
source
/
amiga
/
RexxSysLib.mod
< prev
next >
Wrap
Text File
|
1995-06-29
|
2KB
|
94 lines
(**************************************************************************
$RCSfile: RexxSysLib.mod $
Description: Interface to rexxsyslib.library
Created by: fjc (Frank Copeland)
$Revision: 3.8 $
$Author: fjc $
$Date: 1995/06/04 23:13:14 $
$VER: rexxsyslib_protos.h 36.3 (19.2.91)
Includes Release 40.15
(C) Copyright 1990-1993 Commodore-Amiga, Inc.
All Rights Reserved
Oberon-A interface Copyright © 1994-1995, Frank Copeland.
This file is part of the Oberon-A Interface.
See Oberon-A.doc for conditions of use and distribution.
***************************************************************************)
<* STANDARD- *>
MODULE [2] RexxSysLib;
IMPORT SYS := SYSTEM, Kernel, e := Exec, rx := Rexx, s := Sets;
(*-- Library Base variable --------------------------------------------*)
CONST
rexxsysName * = "rexxsyslib.library";
VAR
base * : rx.RxsLibPtr;
(*-- Library Functions ------------------------------------------------*)
(* --- functions in V33 or higher (distributed as Release 1.2) ---*)
PROCEDURE CreateArgstring* [base,-126]
( string [8] : ARRAY OF CHAR;
length [0] : e.ULONG )
: e.LSTRPTR;
PROCEDURE DeleteArgstring* [base,-132]
( argstring [8] : e.LSTRPTR );
PROCEDURE LengthArgstring* [base,-138]
( argstring [8] : e.LSTRPTR )
: e.ULONG;
PROCEDURE CreateRexxMsg* [base,-144]
( port [8] : e.MsgPortBasePtr;
extension [9] : ARRAY OF CHAR;
host [0] : ARRAY OF CHAR )
: rx.RexxMsgPtr;
PROCEDURE DeleteRexxMsg* [base,-150]
( packet [8] : rx.RexxMsgPtr );
PROCEDURE ClearRexxMsg* [base,-156]
( msgptr [8] : rx.RexxMsgPtr;
count [0] : e.ULONG );
PROCEDURE FillRexxMsg* [base,-162]
( msgptr [8] : rx.RexxMsgPtr;
count [0] : e.ULONG;
mask [1] : s.SET16 )
: BOOLEAN;
PROCEDURE IsRexxMsg* [base,-168]
( msgptr [8] : rx.RexxMsgPtr )
: BOOLEAN;
PROCEDURE LockRexxBase* [base,-450]
( resource [0] : e.ULONG );
PROCEDURE UnlockRexxBase* [base,-456]
( resource [0] : e.ULONG );
(*-- Library Base variable --------------------------------------------*)
<*$LongVars-*>
(*-----------------------------------*)
PROCEDURE* [0] CloseLib (VAR rc : LONGINT);
BEGIN (* CloseLib *)
IF base # NIL THEN e.CloseLibrary (base) END;
END CloseLib;
BEGIN
base := SYS.VAL (rx.RxsLibPtr,
e.OpenLibrary (rexxsysName, e.libraryMinimum));
IF base # NIL THEN Kernel.SetCleanup (CloseLib) END
END RexxSysLib.